package com.core.zyyz.pcmc.domain;

import java.util.Date;

import com.core.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.core.common.annotation.Excel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 消息记录对象 pcmc_msg_record
 *
 * @author core
 * @date 2024-10-31
 */
public class PcmcMsgRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 消息ID */
    private Long messageId;

    /** 消息类型(email,local) */
    @Excel(name = "消息类型(email,local)")
    private String messageType;

    /** 站内消息类型(personal,system) */
    @Excel(name = "站内消息类型(personal,system)")
    private String localMessageType;

    /** 主题 */
    @Excel(name = "主题")
    private String subject;

    /** 内容 */
    @Excel(name = "内容")
    private String content;

    /** 发送人 */
    @Excel(name = "发送人")
    private String sender;

    /** 接收人 */
    @Excel(name = "接收人")
    private String receiver ;

    /** 抄送人 */
    @Excel(name = "抄送人")
    private String carbonCopy;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 失败结果 */
    @Excel(name = "失败结果")
    private String failMsg;

    /** 发布时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发布时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pushTime;

    /** 发送时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发送时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date sendDate;

    /** 创建日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** 接收类型(0:默认,1:用户) */
    @Excel(name = "接收类型(0:默认,1:用户)")
    private String receiveType;

    /** 接收值 */
    @Excel(name = "接收值")
    private String receiveValue;

    public String getLocalMessageType() {
        return localMessageType;
    }

    public String getSubject() {
        return subject;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getSender() {
        return sender;
    }

    public void setSender(String sender) {
        this.sender = sender;
    }

    public String getReceiver() {
        return receiver;
    }

    public void setReceiver(String receiver) {
        this.receiver = receiver;
    }

    public void setCarbonCopy(String carbonCopy) {
        this.carbonCopy = carbonCopy;
    }


    public void setMessageId(Long messageId)
    {
        this.messageId = messageId;
    }

    public Long getMessageId()
    {
        return messageId;
    }
    public void setMessageType(String messageType)
    {
        this.messageType = messageType;
    }

    public String getMessageType()
    {
        return messageType;
    }
    public void setLocalMessageType(String localMessageType)
    {
        this.localMessageType = localMessageType;
    }



    public String getCarbonCopy()
    {
        return carbonCopy;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }
    public void setFailMsg(String failMsg)
    {
        this.failMsg = failMsg;
    }

    public String getFailMsg()
    {
        return failMsg;
    }
    public void setPushTime(Date pushTime)
    {
        this.pushTime = pushTime;
    }

    public Date getPushTime()
    {
        return pushTime;
    }
    public void setSendDate(Date sendDate)
    {
        this.sendDate = sendDate;
    }

    public Date getSendDate()
    {
        return sendDate;
    }
    public void setCreateDate(Date createDate)
    {
        this.createDate = createDate;
    }

    public Date getCreateDate()
    {
        return createDate;
    }
    public void setReceiveType(String receiveType)
    {
        this.receiveType = receiveType;
    }

    public String getReceiveType()
    {
        return receiveType;
    }
    public void setReceiveValue(String receiveValue)
    {
        this.receiveValue = receiveValue;
    }

    public String getReceiveValue()
    {
        return receiveValue;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("messageId", getMessageId())
                .append("messageType", getMessageType())
                .append("localMessageType", getLocalMessageType())
                .append("subject", getSubject())
                .append("content", getContent())
                .append("sender", getSender())
                .append("receiver", getReceiver())
                .append("carbonCopy", getCarbonCopy())
                .append("status", getStatus())
                .append("failMsg", getFailMsg())
                .append("pushTime", getPushTime())
                .append("sendDate", getSendDate())
                .append("createDate", getCreateDate())
                .append("createBy", getCreateBy())
                .append("receiveType", getReceiveType())
                .append("receiveValue", getReceiveValue())
                .toString();
    }
}
